1. Field of Invention
This invention relates to waveform generators, specifically to a waveform generator with multiple outputs having arbitrary delays that change over time.
2. Prior Art
Waveform generators are used to create signals that provide a stimulus for devices under test. The generators can be programmed to produce signals with a specified amount of noise, interference, frequency offset, frequency drift, protocol errors, and other factors. Testing with these waveforms can verify whether a device has satisfactory performance under adverse conditions. These tests can be performed using hardware test equipment or software simulations of the waveform and device under test.
The waveform is typically sampled or generated on a computer, and then saved in digital memory. At runtime, the memory is sequentially accessed to realize the waveform. The digital waveform samples can be used in software, or can drive a digital to analog converter (DAC) that outputs the waveform electrically, as in U.S. Pat. No. 4,438,502 to Fox et al. (1984). This basic technique is best at implementing a waveform that is closely synchronized with the frequency and phase of the DAC clock, and repeats over a period of time less than or equal to the number of samples that can be saved in memory. When implementing multiple signals, it may be necessary to break the tight clock-signal relationship because the signals aren't closely related to each other. To retain signal quality, this will typically involve interpolating the waveform for fractional waveform sample delays, as in U.S. Pat. No. 4,536,853 to Kawamoto et al. (1985).
Modern communication systems transmit and receive multiple signals simultaneously, using multiple antennas. They also operate in an environment where there are many potential interference signals. Specific systems of interest include anti-jamming, direction finding, multiple user detection, geolocation, and emitter identification for RADAR, Global Positioning System (GPS), cellular, Wi-Fi, Bluetooth, and many other radio applications.
Testing modern communication systems requires the generation of multiple versions of a waveform, one for each antenna at the receiver. Each waveform can consist of signals from multiple sources, and the delay between the transmitter antenna and the receiver antenna is different for each antenna. Relative movement of the transmitter and receiver change the signal delay, Doppler shift, acceleration, and jerk over time. This can cause receiver modulation and carrier tracking loops to lose lock. Also, specific delays are necessary for the proper operation of geolocation equipment such as GPS receivers, and relative delays are required for phased arrays to identify specific signals and their direction of arrival.
The need for dynamic delay simulation is greatest in sonar and radar applications, and much work has been focused on these areas. Sonar applications have no radio frequency carrier, so these solutions don't properly handle Doppler for communications systems, as evident in U.S. Pat. No. 4,250,634 to Buckler (1981), U.S. Pat. No. 4,626,217 to Tardif et al. (1986), and U.S. Pat. No. 4,986,755 to Johnson (1991). Even in radar, the relationship between modulation and carrier Doppler and is not critical, so the carrier phase is not controlled. Prior efforts in U.S. Pat. No. 4,168,502 to Susie (1979), U.S. Pat. No. 4,450,447 to Zebker et al. (1984), and U.S. Pat. No. 6,384,771 B1 to Montague et al. (2002) show that the Doppler is treated only as a frequency shift, not a phase shift over time. The best delay techniques use an interpolation function, as in U.S. Pat. No. 3,997,772 to Crochiere et al. (1976) and U.S. Pat. No. 6,549,051 to Di Veroli et al. (2003), that requires significant resources and adds its own distortion. Sonar and radar target simulators are based on the reflection of an unknown signal from a transmitter. These methods aren't efficient or easily applicable in testing communication systems.
In communications, sonar, and radar applications that require a high signal to noise ratio and a wide bandwidth, basic techniques can't be supported by the current technologies. What is needed is an efficient waveform generator that supports dynamic channel delay and the generation of multiple waveforms. This can be accomplished by using information about the simulated signal that is known prior to generation.